package cn.jasonone.jfx.mananger;

import cn.jasonone.jfx.mananger.aware.SceneManagerAware;
import cn.jasonone.jfx.mananger.aware.StageManagerAware;
import javafx.scene.Parent;
import javafx.scene.layout.Pane;

import java.io.IOException;

/**
 * Fxml管理器接口
 *
 * @author xujie
 * @version 1.0
 * @date 2021/12/22 8:43
 */
public interface FxmlManager extends StageManagerAware, SceneManagerAware {
    /**
     * 根据控制器类型加载FXML
     * @param controllerType
     * @param <P>
     * @return
     * @throws IOException
     */
    <P extends Parent> P loadPane(Class controllerType) throws IOException;
}
